/* Copyright 2018 JDCLOUD.COM

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http:#www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

storage相关 API
流计算storage相关信息接口

OpenAPI spec version: v1
Contact: 

NOTE: This class is auto generated by the jdcloud code generator program.
*/

#import <Foundation/Foundation.h>
#import <JDCloudOCSDKStreamcomputer/StreamcomputerApiModel.h>


@implementation StreamcomputerDeleteJobRequest
-(id) initWithRegion:(NSString *)regionId
namespaceId:(NSString*)namespaceId
jobId:(NSNumber*)jobId { 
    self.regionId = regionId;
    self.namespaceId = namespaceId;
    self.jobId = jobId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
namespaceId:(NSString*)namespaceId
jobId:(NSNumber*)jobId { 
    self.regionId = regionId;
    self.version = version;
    self.namespaceId = namespaceId;
    self.jobId = jobId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self namespaceId])
    {
        [result setValue:[self namespaceId] forKey:@"namespaceId"];
    }
    if([self jobId])
    {
        [result setValue:[self jobId] forKey:@"jobId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.namespaceId = [dictionary objectForKey:@"namespaceId"];
    self.jobId = [dictionary objectForKey:@"jobId"];
    return self;
} 

@end
@implementation StreamcomputerDescribeJobRequest
-(id) initWithRegion:(NSString *)regionId
jobId:(NSNumber*)jobId
namespaceId:(NSNumber*)namespaceId { 
    self.regionId = regionId;
    self.jobId = jobId;
    self.namespaceId = namespaceId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
jobId:(NSNumber*)jobId
namespaceId:(NSNumber*)namespaceId { 
    self.regionId = regionId;
    self.version = version;
    self.jobId = jobId;
    self.namespaceId = namespaceId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self jobId])
    {
        [result setValue:[self jobId] forKey:@"jobId"];
    }
    if([self namespaceId])
    {
        [result setValue:[self namespaceId] forKey:@"namespaceId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.jobId = [dictionary objectForKey:@"jobId"];
    self.namespaceId = [dictionary objectForKey:@"namespaceId"];
    return self;
} 

@end
@implementation StreamcomputerDeleteJobResult
-(id) initWithMessage:(NSString*) message
        status:(NSNumber*)status { 
    self.message = message;               
    self.status = status;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self message])
    {
        [result setValue:[self message] forKey:@"message"];
    }
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.message = [dictionary objectForKey:@"message"];
    self.status = [dictionary objectForKey:@"status"];
    return self;
} 

@end
@implementation StreamcomputerGetJobListRequest
-(id) initWithRegion:(NSString *)regionId
namespaceId:(NSString*)namespaceId { 
    self.regionId = regionId;
    self.namespaceId = namespaceId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
namespaceId:(NSString*)namespaceId { 
    self.regionId = regionId;
    self.version = version;
    self.namespaceId = namespaceId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self namespaceId])
    {
        [result setValue:[self namespaceId] forKey:@"namespaceId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.namespaceId = [dictionary objectForKey:@"namespaceId"];
    return self;
} 

@end
@implementation StreamcomputerStopJobResult
-(id) initWithMessage:(NSString*) message { 
    self.message = message;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self message])
    {
        [result setValue:[self message] forKey:@"message"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.message = [dictionary objectForKey:@"message"];
    return self;
} 

@end
@implementation StreamcomputerStartJobResult
-(id) initWithMessage:(NSString*) message { 
    self.message = message;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self message])
    {
        [result setValue:[self message] forKey:@"message"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.message = [dictionary objectForKey:@"message"];
    return self;
} 

@end
@implementation StreamcomputerStartJobRequest
-(id) initWithRegion:(NSString *)regionId
namespaceId:(NSString*)namespaceId
jobId:(NSNumber*)jobId { 
    self.regionId = regionId;
    self.namespaceId = namespaceId;
    self.jobId = jobId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
namespaceId:(NSString*)namespaceId
jobId:(NSNumber*)jobId { 
    self.regionId = regionId;
    self.version = version;
    self.namespaceId = namespaceId;
    self.jobId = jobId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self namespaceId])
    {
        [result setValue:[self namespaceId] forKey:@"namespaceId"];
    }
    if([self jobId])
    {
        [result setValue:[self jobId] forKey:@"jobId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.namespaceId = [dictionary objectForKey:@"namespaceId"];
    self.jobId = [dictionary objectForKey:@"jobId"];
    return self;
} 

@end
@implementation StreamcomputerStopJobRequest
-(id) initWithRegion:(NSString *)regionId
namespaceId:(NSString*)namespaceId
jobId:(NSNumber*)jobId { 
    self.regionId = regionId;
    self.namespaceId = namespaceId;
    self.jobId = jobId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
namespaceId:(NSString*)namespaceId
jobId:(NSNumber*)jobId { 
    self.regionId = regionId;
    self.version = version;
    self.namespaceId = namespaceId;
    self.jobId = jobId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self namespaceId])
    {
        [result setValue:[self namespaceId] forKey:@"namespaceId"];
    }
    if([self jobId])
    {
        [result setValue:[self jobId] forKey:@"jobId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.namespaceId = [dictionary objectForKey:@"namespaceId"];
    self.jobId = [dictionary objectForKey:@"jobId"];
    return self;
} 

@end
@implementation StreamcomputerQueryNamespaceDetailRequest
-(id) initWithRegion:(NSString *)regionId
namespaceId:(NSNumber*)namespaceId { 
    self.regionId = regionId;
    self.namespaceId = namespaceId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
namespaceId:(NSNumber*)namespaceId { 
    self.regionId = regionId;
    self.version = version;
    self.namespaceId = namespaceId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self namespaceId])
    {
        [result setValue:[self namespaceId] forKey:@"namespaceId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.namespaceId = [dictionary objectForKey:@"namespaceId"];
    return self;
} 

@end
@implementation StreamcomputerUpdateNamespaceResult
-(id) initWithStatus:(NSNumber*) status { 
    self.status = status;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.status = [dictionary objectForKey:@"status"];
    return self;
} 

@end
@implementation StreamcomputerDeleteNamespaceResult
-(id) initWithStatus:(NSNumber*) status { 
    self.status = status;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.status = [dictionary objectForKey:@"status"];
    return self;
} 

@end
@implementation StreamcomputerCreateNamespaceResult
-(id) initWithStatus:(NSNumber*) status { 
    self.status = status;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.status = [dictionary objectForKey:@"status"];
    return self;
} 

@end
@implementation StreamcomputerDeleteNamespaceRequest
-(id) initWithRegion:(NSString *)regionId
namespaceId:(NSNumber*)namespaceId { 
    self.regionId = regionId;
    self.namespaceId = namespaceId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
namespaceId:(NSNumber*)namespaceId { 
    self.regionId = regionId;
    self.version = version;
    self.namespaceId = namespaceId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self namespaceId])
    {
        [result setValue:[self namespaceId] forKey:@"namespaceId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.namespaceId = [dictionary objectForKey:@"namespaceId"];
    return self;
} 

@end
@implementation StreamcomputerQueryNamespacesRequest
-(id) initWithRegion:(NSString *)regionId
keyword:(NSString*)keyword { 
    self.regionId = regionId;
    self.keyword = keyword;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
keyword:(NSString*)keyword { 
    self.regionId = regionId;
    self.version = version;
    self.keyword = keyword;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self keyword])
    {
        [result setValue:[self keyword] forKey:@"keyword"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.keyword = [dictionary objectForKey:@"keyword"];
    return self;
} 

@end
@implementation StreamcomputerDeleteStorageResult
-(id) initWithMessage:(NSString*) message { 
    self.message = message;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self message])
    {
        [result setValue:[self message] forKey:@"message"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.message = [dictionary objectForKey:@"message"];
    return self;
} 

@end
@implementation StreamcomputerGetStorageListRequest
-(id) initWithRegion:(NSString *)regionId
storageType:(NSString*)storageType
namespaceId:(NSString*)namespaceId { 
    self.regionId = regionId;
    self.storageType = storageType;
    self.namespaceId = namespaceId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
storageType:(NSString*)storageType
namespaceId:(NSString*)namespaceId { 
    self.regionId = regionId;
    self.version = version;
    self.storageType = storageType;
    self.namespaceId = namespaceId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self storageType])
    {
        [result setValue:[self storageType] forKey:@"storageType"];
    }
    if([self namespaceId])
    {
        [result setValue:[self namespaceId] forKey:@"namespaceId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.storageType = [dictionary objectForKey:@"storageType"];
    self.namespaceId = [dictionary objectForKey:@"namespaceId"];
    return self;
} 

@end
@implementation StreamcomputerAddOrUpdateStorageResult
-(id) initWithMessage:(NSString*) message
        status:(NSNumber*)status { 
    self.message = message;               
    self.status = status;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self message])
    {
        [result setValue:[self message] forKey:@"message"];
    }
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.message = [dictionary objectForKey:@"message"];
    self.status = [dictionary objectForKey:@"status"];
    return self;
} 

@end
@implementation StreamcomputerDescribeStorageRequest
-(id) initWithRegion:(NSString *)regionId
storageId:(NSNumber*)storageId { 
    self.regionId = regionId;
    self.storageId = storageId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
storageId:(NSNumber*)storageId { 
    self.regionId = regionId;
    self.version = version;
    self.storageId = storageId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self storageId])
    {
        [result setValue:[self storageId] forKey:@"storageId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.storageId = [dictionary objectForKey:@"storageId"];
    return self;
} 

@end
@implementation StreamcomputerDeleteStorageRequest
-(id) initWithRegion:(NSString *)regionId
storageId:(NSNumber*)storageId { 
    self.regionId = regionId;
    self.storageId = storageId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
storageId:(NSNumber*)storageId { 
    self.regionId = regionId;
    self.version = version;
    self.storageId = storageId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self storageId])
    {
        [result setValue:[self storageId] forKey:@"storageId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.storageId = [dictionary objectForKey:@"storageId"];
    return self;
} 

@end
@implementation StreamcomputerAddOrUpdateJobRequest
-(id) initWithRegion:(NSString *)regionId
jobStr:(JobStr*)jobStr { 
    self.regionId = regionId;
    self.jobStr = jobStr;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
jobStr:(JobStr*)jobStr { 
    self.regionId = regionId;
    self.version = version;
    self.jobStr = jobStr;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self jobStr])
    {
        [result setValue:[[self jobStr] dictionary]forKey:@"jobStr"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.jobStr = [[JobStr alloc]initWithDic:[dictionary objectForKey:@"jobStr"]];
    return self;
} 

@end
@implementation StreamcomputerDescribeJobResult
-(id) initWithJobStr:(JobStr*) jobStr { 
    self.jobStr = jobStr;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self jobStr])
    {
        [result setValue:[[self jobStr] dictionary]forKey:@"jobStr"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.jobStr = [[JobStr alloc]initWithDic:[dictionary objectForKey:@"jobStr"]];
    return self;
} 

@end
  
@implementation StreamcomputerDeleteJobResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
StreamcomputerDeleteJobResult* result = [[StreamcomputerDeleteJobResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(StreamcomputerDeleteJobResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation StreamcomputerGetJobListResult
-(id) initWithData:(NSArray<JobStr*>*) data { 
    self.data = data;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self data])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self data] count]; i++) {
            JobStr* item = [[self data] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"data"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* dataArray = [dictionary objectForKey:@"data"];
    if(dataArray&&![dataArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [dataArray count];i++)
        {
        JobStr* item = [[JobStr alloc]initWithDic:[dataArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.data = propertyArray;
    }
    return self;
} 

@end
  
@implementation StreamcomputerGetJobListResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
StreamcomputerGetJobListResult* result = [[StreamcomputerGetJobListResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(StreamcomputerGetJobListResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation StreamcomputerDescribeJobResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
StreamcomputerDescribeJobResult* result = [[StreamcomputerDescribeJobResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(StreamcomputerDescribeJobResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation StreamcomputerAddOrUpdateJobResult
-(id) initWithOkInfo:(OkInfo*) okInfo { 
    self.okInfo = okInfo;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self okInfo])
    {
        [result setValue:[[self okInfo] dictionary]forKey:@"okInfo"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.okInfo = [[OkInfo alloc]initWithDic:[dictionary objectForKey:@"okInfo"]];
    return self;
} 

@end
  
@implementation StreamcomputerStopJobResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
StreamcomputerStopJobResult* result = [[StreamcomputerStopJobResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(StreamcomputerStopJobResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation StreamcomputerAddOrUpdateJobResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
StreamcomputerAddOrUpdateJobResult* result = [[StreamcomputerAddOrUpdateJobResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(StreamcomputerAddOrUpdateJobResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation StreamcomputerStartJobResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
StreamcomputerStartJobResult* result = [[StreamcomputerStartJobResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(StreamcomputerStartJobResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation StreamcomputerCreateNamespaceRequest
-(id) initWithRegion:(NSString *)regionId
namespaceStr:(Namespace*)namespaceStr { 
    self.regionId = regionId;
    self.namespaceStr = namespaceStr;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
namespaceStr:(Namespace*)namespaceStr { 
    self.regionId = regionId;
    self.version = version;
    self.namespaceStr = namespaceStr;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self namespaceStr])
    {
        [result setValue:[[self namespaceStr] dictionary]forKey:@"namespaceStr"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.namespaceStr = [[Namespace alloc]initWithDic:[dictionary objectForKey:@"namespaceStr"]];
    return self;
} 

@end
@implementation StreamcomputerUpdateNamespaceRequest
-(id) initWithRegion:(NSString *)regionId
namespaceStr:(Namespace*)namespaceStr { 
    self.regionId = regionId;
    self.namespaceStr = namespaceStr;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
namespaceStr:(Namespace*)namespaceStr { 
    self.regionId = regionId;
    self.version = version;
    self.namespaceStr = namespaceStr;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self namespaceStr])
    {
        [result setValue:[[self namespaceStr] dictionary]forKey:@"namespaceStr"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.namespaceStr = [[Namespace alloc]initWithDic:[dictionary objectForKey:@"namespaceStr"]];
    return self;
} 

@end
  
@implementation StreamcomputerCreateNamespaceResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
StreamcomputerCreateNamespaceResult* result = [[StreamcomputerCreateNamespaceResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(StreamcomputerCreateNamespaceResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation StreamcomputerQueryNamespacesResult
-(id) initWithNamespaces:(NSArray<Namespace*>*) namespaces { 
    self.namespaces = namespaces;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self namespaces])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self namespaces] count]; i++) {
            Namespace* item = [[self namespaces] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"namespaces"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* namespacesArray = [dictionary objectForKey:@"namespaces"];
    if(namespacesArray&&![namespacesArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [namespacesArray count];i++)
        {
        Namespace* item = [[Namespace alloc]initWithDic:[namespacesArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.namespaces = propertyArray;
    }
    return self;
} 

@end
  
@implementation StreamcomputerQueryNamespacesResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
StreamcomputerQueryNamespacesResult* result = [[StreamcomputerQueryNamespacesResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(StreamcomputerQueryNamespacesResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation StreamcomputerQueryNamespaceDetailResult
-(id) initWithNamespace:(Namespace*) namespace { 
    self.namespace = namespace;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self namespace])
    {
        [result setValue:[[self namespace] dictionary]forKey:@"namespace"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.namespace = [[Namespace alloc]initWithDic:[dictionary objectForKey:@"namespace"]];
    return self;
} 

@end
  
@implementation StreamcomputerQueryNamespaceDetailResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
StreamcomputerQueryNamespaceDetailResult* result = [[StreamcomputerQueryNamespaceDetailResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(StreamcomputerQueryNamespaceDetailResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation StreamcomputerUpdateNamespaceResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
StreamcomputerUpdateNamespaceResult* result = [[StreamcomputerUpdateNamespaceResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(StreamcomputerUpdateNamespaceResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation StreamcomputerDeleteNamespaceResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
StreamcomputerDeleteNamespaceResult* result = [[StreamcomputerDeleteNamespaceResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(StreamcomputerDeleteNamespaceResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation StreamcomputerDescribeStorageResult
-(id) initWithData:(Storage*) data { 
    self.data = data;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self data])
    {
        [result setValue:[[self data] dictionary]forKey:@"data"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.data = [[Storage alloc]initWithDic:[dictionary objectForKey:@"data"]];
    return self;
} 

@end
  
@implementation StreamcomputerDescribeStorageResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
StreamcomputerDescribeStorageResult* result = [[StreamcomputerDescribeStorageResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(StreamcomputerDescribeStorageResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation StreamcomputerAddOrUpdateStorageRequest
-(id) initWithRegion:(NSString *)regionId
storageStr:(Storage*)storageStr { 
    self.regionId = regionId;
    self.storageStr = storageStr;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
storageStr:(Storage*)storageStr { 
    self.regionId = regionId;
    self.version = version;
    self.storageStr = storageStr;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self storageStr])
    {
        [result setValue:[[self storageStr] dictionary]forKey:@"storageStr"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.storageStr = [[Storage alloc]initWithDic:[dictionary objectForKey:@"storageStr"]];
    return self;
} 

@end
  
@implementation StreamcomputerDeleteStorageResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
StreamcomputerDeleteStorageResult* result = [[StreamcomputerDeleteStorageResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(StreamcomputerDeleteStorageResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation StreamcomputerGetStorageListResult
-(id) initWithStorageList:(NSArray<Storage*>*) storageList { 
    self.storageList = storageList;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self storageList])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self storageList] count]; i++) {
            Storage* item = [[self storageList] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"storageList"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* storageListArray = [dictionary objectForKey:@"storageList"];
    if(storageListArray&&![storageListArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [storageListArray count];i++)
        {
        Storage* item = [[Storage alloc]initWithDic:[storageListArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.storageList = propertyArray;
    }
    return self;
} 

@end
  
@implementation StreamcomputerAddOrUpdateStorageResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
StreamcomputerAddOrUpdateStorageResult* result = [[StreamcomputerAddOrUpdateStorageResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(StreamcomputerAddOrUpdateStorageResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation StreamcomputerGetStorageListResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
StreamcomputerGetStorageListResult* result = [[StreamcomputerGetStorageListResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(StreamcomputerGetStorageListResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
 
